An electronic program guide (EPG) application enables a television viewer to navigate through an onscreen program guide and locate television programs and other program content of interest to the viewer. With an EPG application, the television viewer can look at schedules of current and future programming, set reminders for upcoming programs, and/or enter instructions to record one or more television programs. One way in which the EPG application can display an interface for the user is an a grid (“EPG grid”) having multiple rows, each of which is associated with a broadcast channel, and multiple columns each of which can be associated with a time slot. Thus, the EPG application is a core application for television viewing that enables the viewer to determine what programs are available to them at a specific time and on a specific channel. Note that an EPG application can be used to display information other than television schedules, such as radio schedules.
To display the EPG grid on the client device, EPG data is provided to the client device. The EPG data includes station identifiers, channel identifiers, schedule information, program titles, ratings, characters, program descriptions, actor names. The EPG data may be transmitted to the client either “in-band” or “out-of-band.” By in-band, it is meant that the EPG data is transmitted as a part of the program content. By out-of-band, it is meant that the EPG data is transmitted outside of the program content. Many existing components in user's home entertainment system do not have too much difficulty displaying an EPG grid based on the EPG data that is received by that device alone. For example, a set top box might receive EPG data from a single source, such as a satellite television provider. The set top box displays, on a television, an EPG grid having a channel lineup for the satellite television provider and a schedule of the times that programs are broadcast.
However, some home entertainment systems take a more open approach and allow for the inclusion of multiple simultaneous sources of television programs, each with their own unique channel lineups and schedules. The entertainment system could include a group of connected components such as a cable set top box, a satellite receiver, a personal computer, etc. The program sources could include, for example, a cable broadcast, a satellite broadcast, or a web server streaming Internet Protocol television (IPTV). Note that each of these program sources will typically have its own EPG data that by itself is suitable to form an EPG grid. Furthermore, the system can have multiple tuners, each of which may obtain program content from a different source and obtain its own set of EPG data.
For systems that allow more than one program source and multiple tuners, it can be a challenge to incorporate the different EPG data and present a viewable and conveniently navigable user interface (e.g., an EPG grid) that provides a desirable and efficient user experience.